YZ

XZ

XW

ZW

XY

YW

Setup

Label

angleYZ = 0 (slider from 0 to 6.283185307179586, step 0.01)
angleXZ = 0 (slider from 0 to 6.283185307179586, step 0.01)
angleXW = 0 (slider from 0 to 6.283185307179586, step 0.01)
angleZW = 0 (slider from 0 to 6.283185307179586, step 0.01)
angleXY = 0 (slider from 0 to 6.283185307179586, step 0.01)
angleYW = 0 (slider from 0 to 6.283185307179586, step 0.01)
distance: 2
P0: {{-1}, {-1}, {-1}, {1}}
P1: {{1}, {-1}, {-1}, {1}}
P2: {{1}, {1}, {-1}, {1}}
P3: {{-1}, {1}, {-1}, {1}}
P4: {{-1}, {-1}, {1}, {1}}
P5: {{1}, {-1}, {1}, {1}}
P6: {{1}, {1}, {1}, {1}}
P7: {{-1}, {1}, {1}, {1}}
P8: {{-1}, {-1}, {-1}, {-1}}
P9: {{1}, {-1}, {-1}, {-1}}
P10: {{1}, {1}, {-1}, {-1}}
P11: {{-1}, {1}, {-1}, {-1}}
P12: {{-1}, {-1}, {1}, {-1}}
P13: {{1}, {-1}, {1}, {-1}}
P14: {{1}, {1}, {1}, {-1}}
P15: {{-1}, {1}, {1}, {-1}}
rotXY: {{cos(angleXY), sin(angleXY), 0, 0}, {(-sin(angleXY)), cos(angleXY), 0, 0}, {0, 0, 1, 0}, {0, 0, 0, 1}}
rotYZ: {{1, 0, 0, 0}, {0, cos(angleYZ), sin(angleYZ), 0}, {0, (-sin(angleYZ)), cos(angleYZ), 0}, {0, 0, 0, 1}}
rotXZ: {{cos(angleXZ), 0, (-sin(angleXZ)), 0}, {0, 1, 0, 0}, {sin(angleXZ), 0, cos(angleXZ), 0}, {0, 0, 0, 1}}
rotXW: {{cos(angleXW), 0, 0, sin(angleXW)}, {0, 1, 0, 0}, {0, 0, 1, 0}, {(-sin(angleXW)), 0, 0, cos(angleXW)}}
rotYW: {{1, 0, 0, 0}, {0, cos(angleYW), 0, (-sin(angleYW))}, {0, 0, 1, 0}, {0, sin(angleYW), 0, cos(angleYW)}}
rotZW: {{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, cos(angleZW), (-sin(angleZW))}, {0, 0, sin(angleZW), cos(angleZW)}}
Q0: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P0)
Q1: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P1)
Q2: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P2)
Q3: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P3)
Q4: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P4)
Q5: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P5)
Q6: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P6)
Q7: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P7)
Q8: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P8)
Q9: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P9)
Q10: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P10)
Q11: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P11)
Q12: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P12)
Q13: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P13)
Q14: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P14)
Q15: ((((((rotXY * rotYZ) * rotXZ) * rotXW) * rotYW) * rotZW) * P15)
W0: 1 / (distance - Element[Q0, 4, 1])
W1: 1 / (distance - Element[Q1, 4, 1])
W2: 1 / (distance - Element[Q2, 4, 1])
W3: 1 / (distance - Element[Q3, 4, 1])
W4: 1 / (distance - Element[Q4, 4, 1])
W5: 1 / (distance - Element[Q5, 4, 1])
W6: 1 / (distance - Element[Q6, 4, 1])
W7: 1 / (distance - Element[Q7, 4, 1])
W8: 1 / (distance - Element[Q8, 4, 1])
W9: 1 / (distance - Element[Q9, 4, 1])
W10: 1 / (distance - Element[Q10, 4, 1])
W11: 1 / (distance - Element[Q11, 4, 1])
W12: 1 / (distance - Element[Q12, 4, 1])
W13: 1 / (distance - Element[Q13, 4, 1])
W14: 1 / (distance - Element[Q14, 4, 1])
W15: 1 / (distance - Element[Q15, 4, 1])
M0: {{W0, 0, 0, 0}, {0, W0, 0, 0}, {0, 0, W0, 0}}
M1: {{W1, 0, 0, 0}, {0, W1, 0, 0}, {0, 0, W1, 0}}
M2: {{W2, 0, 0, 0}, {0, W2, 0, 0}, {0, 0, W2, 0}}
M3: {{W3, 0, 0, 0}, {0, W3, 0, 0}, {0, 0, W3, 0}}
M4: {{W4, 0, 0, 0}, {0, W4, 0, 0}, {0, 0, W4, 0}}
M5: {{W5, 0, 0, 0}, {0, W5, 0, 0}, {0, 0, W5, 0}}
M6: {{W6, 0, 0, 0}, {0, W6, 0, 0}, {0, 0, W6, 0}}
M7: {{W7, 0, 0, 0}, {0, W7, 0, 0}, {0, 0, W7, 0}}
M8: {{W8, 0, 0, 0}, {0, W8, 0, 0}, {0, 0, W8, 0}}
M9: {{W9, 0, 0, 0}, {0, W9, 0, 0}, {0, 0, W9, 0}}
M10: {{W10, 0, 0, 0}, {0, W10, 0, 0}, {0, 0, W10, 0}}
M11: {{W11, 0, 0, 0}, {0, W11, 0, 0}, {0, 0, W11, 0}}
M12: {{W12, 0, 0, 0}, {0, W12, 0, 0}, {0, 0, W12, 0}}
M13: {{W13, 0, 0, 0}, {0, W13, 0, 0}, {0, 0, W13, 0}}
M14: {{W14, 0, 0, 0}, {0, W14, 0, 0}, {0, 0, W14, 0}}
M15: {{W15, 0, 0, 0}, {0, W15, 0, 0}, {0, 0, W15, 0}}
MP0: (M0 * Q0)
MP1: (M1 * Q1)
MP2: (M2 * Q2)
MP3: (M3 * Q3)
MP4: (M4 * Q4)
MP5: (M5 * Q5)
MP6: (M6 * Q6)
MP7: (M7 * Q7)
MP8: (M8 * Q8)
MP9: (M9 * Q9)
MP10: (M10 * Q10)
MP11: (M11 * Q11)
MP12: (M12 * Q12)
MP13: (M13 * Q13)
MP14: (M14 * Q14)
MP15: (M15 * Q15)
A0: (Element[MP0, 1, 1], Element[MP0, 2, 1], Element[MP0, 3, 1])
A1: (Element[MP1, 1, 1], Element[MP1, 2, 1], Element[MP1, 3, 1])
A2: (Element[MP2, 1, 1], Element[MP2, 2, 1], Element[MP2, 3, 1])
A3: (Element[MP3, 1, 1], Element[MP3, 2, 1], Element[MP3, 3, 1])
A4: (Element[MP4, 1, 1], Element[MP4, 2, 1], Element[MP4, 3, 1])
A5: (Element[MP5, 1, 1], Element[MP5, 2, 1], Element[MP5, 3, 1])
A6: (Element[MP6, 1, 1], Element[MP6, 2, 1], Element[MP6, 3, 1])
A7: (Element[MP7, 1, 1], Element[MP7, 2, 1], Element[MP7, 3, 1])
A8: (Element[MP8, 1, 1], Element[MP8, 2, 1], Element[MP8, 3, 1])
A9: (Element[MP9, 1, 1], Element[MP9, 2, 1], Element[MP9, 3, 1])
A10: (Element[MP10, 1, 1], Element[MP10, 2, 1], Element[MP10, 3, 1])
A11: (Element[MP11, 1, 1], Element[MP11, 2, 1], Element[MP11, 3, 1])
A12: (Element[MP12, 1, 1], Element[MP12, 2, 1], Element[MP12, 3, 1])
A13: (Element[MP13, 1, 1], Element[MP13, 2, 1], Element[MP13, 3, 1])
A14: (Element[MP14, 1, 1], Element[MP14, 2, 1], Element[MP14, 3, 1])
A15: (Element[MP15, 1, 1], Element[MP15, 2, 1], Element[MP15, 3, 1])
B0 = Segment(A0, A1)
B1 = Segment(A1, A2)
B2 = Segment(A2, A3)
B3 = Segment(A3, A0)
C0 = Segment(A4, A5)
C1 = Segment(A5, A6)
C2 = Segment(A6, A7)
C3 = Segment(A7, A4)
D0 = Segment(A0, A4)
D1 = Segment(A1, A5)
D2 = Segment(A2, A6)
D3 = Segment(A3, A7)
E0 = Segment(A8, A9)
E1 = Segment(A9, A10)
E2 = Segment(A10, A11)
E3 = Segment(A11, A8)
F0 = Segment(A12, A13)
F1 = Segment(A13, A14)
F2 = Segment(A14, A15)
F3 = Segment(A15, A12)
G0 = Segment(A8, A12)
G1 = Segment(A9, A13)
G2 = Segment(A10, A14)
G3 = Segment(A11, A15)
H0 = Segment(A0, A8)
H1 = Segment(A1, A9)
H2 = Segment(A2, A10)
H3 = Segment(A3, A11)
H4 = Segment(A4, A12)
H5 = Segment(A5, A13)
H6 = Segment(A6, A14)
H7 = Segment(A7, A15)
a = false
red = 0.87 (slider from 0 to 1, step 0.01)
green = 0.27 (slider from 0 to 1, step 0.01)
blu = 0.71 (slider from 0 to 1, step 0.01)
speed: 1
b = false
c = false
d = false
e = false
f = false
g = false